The extraction of critical events relevant to a broadcast sporting event is a manual and time-consuming task. This is typically performed by video annotators who view a recording of the event and manually scrub through the video to annotate the video in order to break the video into segments for future use. Time codes embedded in the video are typically used as the mode of identifying the segment of the video that is relevant. Accordingly, the ability to extract these types of data and synchronize with video is a challenge.
Sporting activities contain repeating events of fine granularity, such as clocks and timers, which are independent of the play action, as well as events that are dependent on the action of the players. One currently used broadcast methodology for enhancing the fan experience is to embed this data by rendering a graphical representation of it into the video program. For example, an on-screen dashboard typically shows information such as scores, game-clocks, shot-clocks, etc. Recently, there has been an increase in the amount of data that is being displayed in these on-screen dashboards.
A further methodology sends out-of-band data for the sporting event. However, the transmission path for the out-of-band data may be asynchronous and exhibit a non-deterministic delay. For example, player positions at specific points in a basketball game referenced to a game-clock may be collected as the game is in progress. This information may then be sent to a remote server for analysis and data mining. However, the ability to extract these types of data and synchronize the data with the corresponding video-program is a challenge. Methods that correlate event-based data extracted from out-of-band data source and in-band data source are required to facilitate synchronization between these two sources allowing for video-program enhancement with event-based content and event-based indexing of a video database.